/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package EntidadesController;

import java.sql.*;
import java.util.ArrayList;
import java.util.List;


/**
 *
 * @author T.i.ago
 */
public class Falta
{


    private String idturma_x_discente = "";
    private String dia_dia = "";
    private String mes_mes = "";
    private String ano_ano = "";

    private String nome = "";
    private String matricula = "";
    private boolean falta = false;
    private SQLException erro = new SQLException();

    static Connection conexao = null;
    static Statement estado = null;
    static ResultSet rs;
    private boolean render=false;
    private String msgerro;

    public boolean isRender() {
        return render;
    }

    public void setRender(boolean render) {
        this.render = render;
    }

    public String getMsgerro() {
        return msgerro;
    }

    public void setMsgerro(String msgerro) {
        this.msgerro = msgerro;
    }

    public Falta() {
        conexao = new Conexao().Acesso();
    }


    public String inserir() throws SQLException {
        String result_inserir = "failure";

        try {
            estado = conexao.createStatement();

            estado.execute("INSERT INTO falta(idturma_x_discente, dia_dia, mes_mes, ano_ano) VALUES ('" + idturma_x_discente + "','" + dia_dia + "','" + mes_mes + "','" + ano_ano + "')");
            estado.close();
            result_inserir = "success";
            render = false;
        } catch (SQLException e) {
            this.erro = e;
            msgerro = erro.getLocalizedMessage();

            if (msgerro.contains("pk_matriculadisc")&&msgerro.contains("unicidade"))
            {msgerro = "Esse número de matrícula ja está cadastrado!";}
            //estado.execute("ROLLBACK");
            estado.close();
            result_inserir = "failure";
            render = true;
        }
        return result_inserir;
    }

    public List<String> getListaAno() throws SQLException {

        List<String> items = new ArrayList<String>();

        estado = conexao.createStatement();
        rs = estado.executeQuery("SELECT * FROM ano");
        while (rs.next() == true) {
            ano_ano = rs.getString(1);
            items.add(ano_ano);
        }
     return items;
 }

    public void setAno_ano(String ano_ano) {
        this.ano_ano = ano_ano;
    }

    public List<String> getListaDia() throws SQLException {

        List<String> items = new ArrayList<String>();

        estado = conexao.createStatement();
        rs = estado.executeQuery("SELECT * FROM dia");
        while (rs.next() == true) {
            dia_dia = rs.getString(1);
            items.add(dia_dia);
        }
        estado.close();
     return items;
 }

    public void setDia_dia(String dia_dia) {

        this.dia_dia = dia_dia;
    }

    public List<String> getIdturma_x_discente() throws SQLException {

        List<String> items = new ArrayList<String>();

        estado = conexao.createStatement();
        rs = estado.executeQuery("SELECT * FROM turma_has_discente");
        while (rs.next() == true) {
            idturma_x_discente = rs.getString(1);
            items.add(idturma_x_discente);
        }
     return items;
 }
    public String getIdturma_x_discenteF (){
        return idturma_x_discente;
    }

    public void setIdturma_x_discente(String idturma_x_discente) {
        this.idturma_x_discente = idturma_x_discente;
    }

    public List<String> getListaMes() throws SQLException {

        List<String> items = new ArrayList<String>();

        estado = conexao.createStatement();
        rs = estado.executeQuery("SELECT * FROM mes");
        while (rs.next() == true) {
            mes_mes = rs.getString(1);
            items.add(mes_mes);
        }
     return items;
 }
    
    public String getErro() {
        return erro.getMessage();
    }

    public void setMes_mes(String mes_mes) {
        this.mes_mes = mes_mes;
    }

    public String getAno_ano() {
        return ano_ano;
    }

    public String getDia_dia() {
        return dia_dia;
    }

    public String getMes_mes() {
        return mes_mes;
    }


    public void setFalta(boolean falta) {
        this.falta = falta;
    }
    public boolean getFalta()
    {
        return falta;
    }

    public String getMatricula() {
        return matricula;
    }

    public void setMatricula(String matricula) {
        this.matricula = matricula;
    }

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

}
